package com.bookmanger.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.bookmanger.common.result.Result;
import com.bookmanger.entity.User;
import com.bookmanger.entity.dto.UserInfoDTO;
import com.bookmanger.entity.request.UserInfoRequest;
import com.bookmanger.entity.select.UserListDto;
import com.bookmanger.entity.vo.ListForm;
import com.bookmanger.entity.vo.UserListVo;

import java.util.List;

/**
 * @author huangfuhao
 * @Date 2024/10/26
 */
public interface UserService extends IService<User> {


    Result<UserInfoDTO> getUserInfo();

    Result<String> updateUserInfo(UserInfoRequest userInfoRequest);

    Result<ListForm<UserListVo>> getUserList(UserListDto userListDto);

    Result userDisable(Long id);

    Result userEnable(Long id);

    Result userFreeze(Long id);

    List<User> getUserListByName(String userName);

    Result<Integer> getUserCount();
}
